home *** CD-ROM | disk | FTP | other *** search
/ MacHack 2000 / MacHack 2000.toast / pc / The Hacks / Genie / Projects / A-line / Scripts / Premake.pl < prev    next >
Encoding:
Perl Script  |  2000-06-24  |  884 b   |  41 lines

  1. #!perl -w
  2. # Special MPW glue
  3. undef;
  4.  
  5. # Premake.pl
  6.  
  7. use strict;
  8.  
  9. use FileHandle;
  10.  
  11. use MakeSource;
  12. use MakeImports;
  13.  
  14. Main();
  15.  
  16. sub Main {
  17.     my $rulesdir = $ENV{RULESDIR};
  18.     my $srclist = ":Manifest:Source.list";
  19.     my $importsSCF = ":Manifest:Imports.scf";
  20.     my $srcMk = $rulesdir . "Sources.mk";
  21.     my $importsMk = $rulesdir . "Imports.mk";
  22.     
  23.     if (!-e $srcMk || ModificationDate($srcMk) < ModificationDate($srclist)) {
  24.         my $output = MakeSource($srclist);
  25.         my $out = new FileHandle $srcMk, ">";
  26.         defined $out or die "Couldn't write '$srcMk'";
  27.         print $out @$output;
  28.     }
  29.     if (!-e $importsMk || ModificationDate($importsMk) < ModificationDate($importsSCF)) {
  30.         my $output = MakeImports($importsSCF);
  31.         my $out = new FileHandle $importsMk, ">";
  32.         defined $out or die "Couldn't write '$importsMk'";
  33.         print $out @$output;
  34.     }
  35. }
  36.  
  37. sub ModificationDate {
  38.     my ($file) = @_;
  39.     return (stat $file)[9];
  40. }
  41.